<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/reports.dwt" codeOutsideHTMLIsLocked="false" -->
<?php session_start();
set_time_limit(500);
?>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
	<!-- InstanceBeginEditable name="doctitle" -->
    	<? include_once("../config.php"); ?>
		<title><?=TITLE_RPTMAP_CAUDALIMETRO?></title>
	<!-- InstanceEndEditable -->
	<!-- InstanceBeginEditable name="head" -->
    <?php
	include_once("../utils.php");
    include(ROOT_DIR_CLASES.'/cCliente.php');
    setlocale(LC_ALL, 'Spanish (Argentina)');
    ?>

	<!-- InstanceEndEditable -->
</head>
<body>
<?php
if (isset($_SESSION['cliente'])){
?>
    <!-- InstanceBeginEditable name="initializeBody" -->
    <script type="text/javascript" src="js/wzTooltip/wz_tooltip.js"></script>
	<script type="text/javascript" src="js/wzTooltip/tip_balloon.js"></script>
    <?php

   		$cuenta = $_REQUEST['movil'];
		$labelMovil = $_REQUEST['labelMovil'];
		$anoi = $_REQUEST['anoi'];
		$mesi = $_REQUEST['mesi'];
		$diai = $_REQUEST['diai'];
		$horaInicio = $_REQUEST['horaInicio'];
		$anof = $_REQUEST['anof'];
		$mesf = $_REQUEST['mesf'];
		$diaf = $_REQUEST['diaf'];
		$horaFin = $_REQUEST['horaFin'];

	    $fechai = $anoi.'-'.$mesi.'-'.$diai." ".$horaInicio.':00';
   		$fechaf = $anof.'-'.$mesf.'-'.$diaf." ".$horaFin.':00';

		/***Valores resultados***/
		$distanciaTotal = 0;
		$cantidadConsumo = 0;
		$tiempoEnMarcha = 0;
		$promedioConsumo = 0;
		/************************/
		//$consultaCruda = $consulta = BykomCliente::Consulta_Historico_Mediciones_Test($cuenta,$fechai,$fechaf,3);
		/* si es de ultima hora,
	     * tomo la hora del servidor y me fijo si tienen la misma
	     * zona horaria el movil y el admin
	     */
	    if(isset($_REQUEST["ULTHORA"]) && $_REQUEST["ULTHORA"]==1){
	   		$ULTHORA 	= $_REQUEST["ULTHORA"];
	   		$horaServer = time();
		   	$zonaMovil = BykomCliente::getHoursFromZoneGMT("abmacodigos",$cuenta);
		   	$zonaAdmin = BykomCliente::getHoursFromZoneGMT("adminconfig","");
		   	$res = 0;
		   	if($zonaMovil->cantidad()!=0 && $zonaAdmin->cantidad()!=0 && $zonaMovil->campo("timeZone",0) != $zonaAdmin->campo("timeZone",0) ){
		   		switch($zonaMovil->campo("tipo",0)){
		   			case 1: $horaMovil = $zonaMovil->campo("horas",0); break;
		   			case 2: $horaMovil = (-1)*$zonaMovil->campo("horas",0); break;
		   		}
		   		switch($zonaAdmin->campo("tipo",0)){
		   			case 1: $horaAdmin = $zonaAdmin->campo("horas",0); break;
		   			case 2: $horaAdmin = (-1)*$zonaAdmin->campo("horas",0); break;
		   		}
		   		$res = $horaAdmin - ($horaMovil);
		   		$res = $res * 60;
		   	}
		   	$fechai = $horaServer - (60*60);
		   	$fechai += $res;
		   	$fechaf = $horaServer + (60*60);
		   	$fechaf += $res;
		   	$fechai = date("Y-m-d H:i",$fechai);
		   	$fechaf = date("Y-m-d H:i",$fechaf);

			/*echo "Horas admin:$horaAdmin***Horas movil::$horaMovil <br>";
		   	echo "$res <br>";
		   	echo"<br>HORA SERVER::".date("Y-m-d H:i",$horaServer);
		   	echo"<br>HORA INICIAL ::".$fechai;
		   	echo"<br>HORA FINAL ::".$fechaf;*/

		   	$vFechaCompletaIni = explode(" ",$fechai);
		   	$vFechaCompletaFin = explode(" ",$fechaf);
		   	$vFechaIni 	= explode("-",$vFechaCompletaIni[0]);
		   	$vFechaFin 	= explode("-",$vFechaCompletaFin[0]);
		   	$HoraIni	= $vFechaCompletaIni[1];
		   	$HoraFin 	= $vFechaCompletaFin[1];
		   	$diai 		= $vFechaIni[2];
		   	$mesi 		= $vFechaIni[1];
		   	$anoi 		= $vFechaIni[0];
		   	$diaf 		= $vFechaFin[2];
		   	$mesf 		= $vFechaFin[1];
		   	$anof 		= $vFechaFin[0];
		   	$horaInicio = $HoraIni;
		   	$horaFin 	= $HoraFin;
	  	}
		$consultaCruda = BykomCliente::detalleRecorrido($cuenta,$fechai,$fechaf,"","");
			//echo "****".$consultaCruda->cantidad()."******<br>";
		//ini_set('memory_limit', '256M');
		if ($consultaCruda->cantidad() > 1) {
//			$valor1 = $consultaCruda->campo('VALOR1', $consultaCruda->cantidad()-1) - $consultaCruda->campo('VALOR1', 0);
//			$cantidadConsumoValor = round($valor1/10 ,2);
//			$cantidadConsumo = $cantidadConsumoValor . " Lts.";
//			$valor3 = $consultaCruda->campo('VALOR3', $consultaCruda->cantidad()-1) - $consultaCruda->campo('VALOR3', 0);
//			$tiempoEnMarcha = round($valor3, 0);
//			$tiempoEnMarcha = timePassed($tiempoEnMarcha);
//			$tiempoEnMarcha = gmdate("H:i:s", $tiempoEnMarcha);
			$movilId = -1;
	  		for($i=0;$i < $consultaCruda->cantidad(); $i++){
	  			if ($consultaCruda->campo('movil',$i) != $movilId) {
	  				$objMovil 		= new stdClass();
	  				$ultimoObjMovil = $objMovil;
	  				$movilId 		= $consultaCruda->campo('movil',$i);
	  				$objMovil->movil= $movilId;
	  				$objMovil->flota= $consultaCruda->campo('nombreFlota',$i);
					$nombreMix = $consultaCruda->campo('nombre',$i);
					if($consultaCruda->campo('nombreDos',$i)!=""){
						$nombreMix .= ", ".$consultaCruda->campo('nombreDos',$i);
					}
					$objMovil->nombreMovil= $nombreMix;
					$objMovil->velocidadPromedio= 0;
					$objMovil->velocidadMax 	= 0;
					$objMovil->distanciaTotal 	= 0;
					$objMovil->cantidadConsumo 	= 0;
					$objMovil->tiempoEnMarcha 	= 0;
					$listaMoviles[] = $objMovil;
	  			}
	  			$ultimoObjMovil->listaPuntos[] = $consultaCruda->getRegistro($i);
	  		}

			foreach($listaMoviles as $movil){
				if (count($movil->listaPuntos) < 2) continue;
				$velocidadTot 	= 0;
				$velocidadMax 	= 0;
				$contador 		= 0;
				$consumoInicial	= null;
				$consumoFinal	= null;
				$tiempoMarchaInicial = null;
				$tiempoMarchaFinal = null;
				$listadoPuntos = $movil->listaPuntos;
				foreach($listadoPuntos as $punto){
					//Caudalimetro
					if($consumoInicial == null && $punto->consumoTotal != null) {
							$consumoInicial	= $punto->consumoTotal;
					}
					if($consumoInicial != null && $punto->consumoTotal != null) {
							$consumoFinal = $punto->consumoTotal;
					}
					//Tiempo en Marcha
					if($tiempoMarchaInicial == null && $punto->tiempoEnMarcha != null) {
							$tiempoMarchaInicial	= $punto->tiempoEnMarcha;
					}
					if($tiempoMarchaInicial != null && $punto->tiempoEnMarcha != null) {
							$tiempoMarchaFinal	= $punto->tiempoEnMarcha;
					}
					$velocidadTot += $punto->velocidad;
					if($punto->velocidad != 0){
						$contador++;
					}
					if($velocidadMax<=$punto->velocidad){
						$velocidadMax = $punto->velocidad;
					}
				}
				$distanciaTotal 		= BykomCliente::CalculaDistanciaTotal($listadoPuntos);
				$distaciaTotalSinFormat = $distanciaTotal; 
			   	$distanciaTotal			= distanciaFormat($distanciaTotal);
			   	
			   	$movil->distanciaTotal 	= $distanciaTotal;
				if($consumoFinal != null && $consumoInicial!=null){
					$valor1 = $consumoFinal - $consumoInicial;
				} else {
					$valor1 = 0;
				}
				$cantidadConsumoValor = round($valor1 ,2);//round($valor1/10 ,2);
				$cantidadConsumo = $cantidadConsumoValor . " Lts.";
				if($tiempoMarchaFinal != null && $tiempoMarchaInicial!=null){
					$valor3 = $tiempoMarchaFinal - $tiempoMarchaInicial;
				} else {
					$valor3 = 0;
				}
				$tiempoEnMarcha = round($valor3, 0);
				$tiempoEnMarchaSinFormat = $tiempoEnMarcha; 
				$tiempoEnMarcha = timePassed($tiempoEnMarcha);
				$movil->velocidadPromedio= number_format($velocidadTot/$contador,2);
				$movil->velocidadMax 	= $velocidadMax;
				$movil->cantidadConsumo = $cantidadConsumo;
				$movil->distanciaTotal 	= $distanciaTotal;
				$movil->tiempoEnMarcha 	= $tiempoEnMarcha;
			}
			$distanciaTotalCruda = $distanciaTotal;

			if ($distanciaTotalCruda == 0) {
				$promedioConsumo 	= $cantidadConsumoValor;
				$consumoPromedio 	= $cantidadConsumoValor;
				$litrosHoraPromedio = $cantidadConsumoValor;
			} else {
				$promedioConsumo = $cantidadConsumoValor / $distanciaTotalCruda;
 				$promedioConsumo = round($promedioConsumo, 5);

 				$consumoPromedio = $distanciaTotalCruda / $cantidadConsumoValor;
 				$consumoPromedio = round($consumoPromedio, 5);
 				/**
 				 * consumo ----- tiempo en marcha (segundos)
 				 * 	  X    ----- 1hr (3600 segundos)	
 				 */
 				$litrosHoraPromedio = $cantidadConsumoValor * 3600 / $tiempoEnMarchaSinFormat;
 				$litrosHoraPromedio = round($litrosHoraPromedio, 5);
			}
  			$promedioConsumo = $promedioConsumo . " Lts X Km / " . $consumoPromedio . " Km X Lts / ". $litrosHoraPromedio." Lts x Hs";
		}
		$consulta = BykomCliente::Consulta_Historico_Caudalimetro2($consultaCruda);
		//echo "****".$consulta->cantidad()."******<br>";
		$cant_reg = $consulta->cantidad();

		$fechaiFiltro = $diai.'/'.$mesi.'/'.$anoi." ".$horaInicio.':00';
   		$fechafFiltro = $diaf.'/'.$mesf.'/'.$anof." ".$horaFin.':00';
		$filtro="Consumo ".$fechaiFiltro." - ".$fechafFiltro;
		$codigocuenta = $_SESSION['CODIGOCUENTA'];

	$infoCuenta = BykomCliente::InfoCuentaReduce($cuenta);
   	$nom1nom2 = $infoCuenta->campo('nombre',0)." - ".$infoCuenta->campo('nombre_dos',0);

	$objetivo 	= $_SESSION["objetivo"];
   	$labelLogin 	= $_SESSION["labelLogin"];
  	switch($objetivo){
   	case 1: $tipoCuenta = "Fijo";
   		break;
   	case 2: $tipoCuenta = "Movil";
   		break;
   	case 3: $tipoCuenta = "Flota";
   		break;
   	case 4: $tipoCuenta = "Alias";
   		break;
   	case 5: $tipoCuenta = "Dealer";
   		break;
   }
   	$codigoCuentaNew = $tipoCuenta." ".$labelLogin;
	?>
	<div class="clearfix"></div>
	<div class="reportRecorridos">
	  <!-- reportHeader -->
	  <div class="reportHeader">
	  	<!-- datosHeaderReport -->
	  	<div class="datosHeaderReport">
	      <p ><strong>Cuenta:</strong><?php echo " ".$labelMovil?></p>
	      <p ><strong>Filtro:</strong><?php echo " ".$filtro?></p>
	      <p>
			<span class=""><strong>Distancia.</strong><?php echo " ".$distanciaTotal?> &nbsp;</span>
	        <span class=""><strong>Consumo.</strong></span> <span class=""><?php echo " ".$cantidadConsumo?>&nbsp;</span>
	        <span class=""><strong>En marcha.</strong></span> <span class="" style="text-transform:lowercase"><?php echo " ".$tiempoEnMarcha?></span>
	        <span class=""><strong>Promedio.</strong></span> <span class="" style="text-transform:lowercase"><?php echo " ".$promedioConsumo?></span>
	      </p>
              </div>
    <!-- end datosHeaderReport -->

    <!-- barraMenuReporte -->
    <div id="barraMenuReporte" class="barraMenuReporte">
      <ul>
			<?php $parametros = HOSTCLIENT_NO_SSL . ":". PORT_WCADMIN . "/wcAdmin/execute/jasperReports/XXX/servlet/reportEventos?userAction=get&v=".$cuenta."&codigocuenta=".$codigoCuentaNew."&nom1nom2=".$nom1nom2."&tipo=Caudalimetro&filtro=".$filtro."&fechai=".$fechai."&fechaf=".$fechaf."&distanciaTotal=".$distanciaTotal."&tiempoEnMarcha=".$tiempoEnMarcha."&cantidadConsumo=".$cantidadConsumo."&promedioConsumo=" . $promedioConsumo."&consumoHora=".$litrosHoraPromedio."&ip=".$_SERVER['SERVER_NAME']."&reportType="; ?>
            <li class="printIcon"><a  target="_blank" href="<?=$parametros?>3" title="">Imprimir</a></li>
            <li class="xlsIcon"><a  target="_blank" href="<?=$parametros?>2" title="">XLS</a></li>
            <li class="pdfIcon"><a  target="_blank" href="<?=$parametros?>1" title="">PDF</a></li>
            <li class="csvIcon"><a  target="_blank" href="<?=$parametros?>4" title="">CSV</a></li>
            <div id="recordsCount"> <?php echo $cant_reg?> registros listados </div>
      </ul>
    </div>
    <!-- end barraMenuReporte -->
     </div>
  <!-- end reportHeader -->
        <div id="pageContent" style="overflow-y:scroll;" class="pageContent">
              	<!-- InstanceBeginEditable name="body" -->
				<?php $consulta->imprimirResultadoHistoricoCaudalimetro();?>
                <script type="text/javascript">
					function ViewInMap(cuentaId, prefixTabla, fechaCruda , eventoLabel) {
						if (navigator.userAgent.indexOf('Chrome/') > 0) {
							//minimize window
						}
   						ViewInMapEventoCaudalimetro(cuentaId, 'historico_avl_' + prefixTabla, fechaCruda , eventoLabel);
				    }
                </script>
				<!-- InstanceEndEditable -->
        </div>
    </div>

<?php
}
else
  echo "<font class=Errors> Debe iniciar session para poder visualizar esta pagina.</font>";
?>
</body>
<!-- InstanceEnd --></html>